Python paddlepaddle读取MNIST数据集,并且显示出图片格式

环境准备

python3.7
paddlepaddle

代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import paddle
from paddle.vision.transforms import Compose, Normalize
from paddle.metric import Accuracy
import numpy as np
from PIL import Image

# 使用transform对数据集做归一化
transform = Compose([Normalize(mean=[127.5], std=[127.5], data_format='CHW')])
# mode='test' 选择测试数据集,mode='train'选择训练数据集
test_dataset = paddle.vision.datasets.MNIST(mode='test', transform=transform)
# train_dataset = paddle.vision.datasets.MNIST(mode='train', transform=transform)

#选择数据集中随机一个元素,test_dataset 中每一个数据元素代表一个 图片和它的 标签,
# test_dataset[1] 为取数组中的第二个元素,其中1可以换成 别的元素下标;
# 其中 img1 = test_dataset[1][0] label1 = test_dataset[1][1] 简写如下
img1,label1 = test_dataset[1];
print("打印出实际值");
print(label1);

# 此方法是是将图片由二位数组转化为可读取的格式的,并且展示
#unit8(无符号的整数,unit8是0~255
def img_show(img):
pil_img = Image.fromarray(np.uint8(img))#Image.fromarray图像数据转换为PIL数据对象
pil_img.show()#显示图片


# 读取图片所占空间大小(1,28,28)
print(img1.shape)
# 把图像的形状变为原来的尺寸,由上面的数据可知为28,28
img = img1.reshape(28, 28)
# 读取图片所占空间大小# (28, 28)
print(img.shape)
#将图片展示出来
img_show(img)

一辈子很短,努力的做好两件事就好;
第一件事是热爱生活,好好的去爱身边的人;
第二件事是努力学习,在工作中取得不一样的成绩,实现自己的价值,而不是仅仅为了赚钱;

继开 wechat
欢迎加我的微信,共同交流技术